OpenCode AI: Guía para programar desde la terminal

OPENCODE AI
Solucionex
11
Ago 26

La inteligencia artificial ha cambiado la forma en la que desarrollamos software. Si hace unos años los asistentes de código se limitaban a autocompletar funciones, hoy existen agentes capaces de analizar un proyecto completo, proponer cambios, generar código, ejecutar comandos e incluso verificar que todo funciona correctamente.

Uno de los proyectos que más está creciendo en este ámbito es OpenCode AI, una herramienta de código abierto que permite trabajar con modelos de IA directamente desde la terminal, ofreciendo una experiencia muy similar a la de herramientas como Claude Code o Codex CLI, pero con la ventaja de ser compatible con múltiples proveedores de modelos.

En este artículo aprenderás qué es OpenCode, cómo instalarlo, configurarlo y sacar el máximo partido en proyectos reales.


¿Qué es OpenCode AI?

OpenCode AI es un agente de desarrollo basado en inteligencia artificial que funciona desde la terminal.

En lugar de limitarse a responder preguntas, OpenCode es capaz de:

  • Comprender la estructura completa de un proyecto.
  • Analizar miles de archivos.
  • Modificar código existente.
  • Crear nuevos componentes.
  • Refactorizar aplicaciones.
  • Ejecutar comandos del sistema.
  • Revisar cambios antes de aplicarlos.
  • Trabajar manteniendo el contexto entre sesiones.

Todo ello utilizando el modelo de IA que prefieras.


¿Qué modelos de IA admite?

Una de sus mayores ventajas es que no depende de un único proveedor. Además, no todos los modelos son de pago, por lo que puedes utilizar tanto servicios comerciales como modelos gratuitos o incluso ejecutarlos en tu propio ordenador.

Puedes utilizar:

  • OpenAI (API de pago)
  • GitHub Copilot (requiere suscripción a Copilot)
  • Anthropic Claude (API de pago o suscripción Claude Pro/Max)
  • Google Gemini (gratuito con límites o API de pago)
  • OpenRouter (incluye modelos gratuitos y de pago)
  • Perplexity (API de pago)
  • Azure OpenAI (servicio de pago)
  • Ollama (gratuito, modelos ejecutados localmente)
  • DeepSeek (API de pago, pero gratuito mediante Ollama, LM Studio u OpenRouter según el modelo)
  • Big Pickle (gratuito a través de OpenRouter y otros proveedores compatibles, según disponibilidad)
  • ...

Esto permite cambiar de modelo según el proyecto, el presupuesto disponible o incluso trabajar completamente gratis utilizando modelos locales o los proveedores que ofrecen acceso gratuito.


Instalación

OpenCode puede instalarse en Windows, macOS y Linux, ofreciendo una experiencia muy similar en todos los sistemas operativos. No obstante, donde mejor rendimiento suele ofrecer es en entornos Unix (Linux y macOS), ya que muchas de sus funcionalidades están pensadas para trabajar desde la terminal.

Existen diferentes formas de instalarlo.

Ubuntu y otras distribuciones Linux

La forma más sencilla es utilizando el script oficial:

curl -fsSL https://opencode.ai/install | bash

También puede instalarse mediante npm si ya tienes Node.js instalado:

npm install -g opencode-ai

Una vez finalizada la instalación, puedes comprobar que todo funciona correctamente ejecutando:

opencode --version

macOS

En macOS lo más habitual es utilizar Homebrew:

brew install opencode

Si no dispones de Homebrew, también puedes instalarlo mediante npm.

Windows

En Windows la recomendación es utilizar WSL (Windows Subsystem for Linux), ya que proporciona una experiencia prácticamente idéntica a la de una distribución Linux y garantiza una mayor compatibilidad con herramientas de desarrollo.

Una vez configurado WSL, la instalación es exactamente igual que en Ubuntu.

Instalación mediante npm

Si ya trabajas con Node.js, puedes instalar OpenCode de forma global desde cualquier sistema operativo:

npm install -g opencode-ai

Esta opción resulta especialmente útil si quieres mantener la herramienta actualizada fácilmente mediante npm.

Verificar la instalación

Una vez instalado, ejecuta:

opencode --version

Si el comando devuelve la versión instalada, OpenCode ya está listo para configurarse y comenzar a trabajar con el proveedor de IA que prefieras.


Inicializar un proyecto

Dentro del proyecto ejecutamos:

opencode

o

opencode --port XXXX

Si quieres que Opencode se ejecute usando un puerto en concreto.

OpenCode analizará automáticamente el repositorio y generará el archivo AGENTS.md, donde almacenará información sobre:

  • Arquitectura.
  • Tecnologías utilizadas.
  • Convenciones del proyecto.
  • Organización del código.
  • Reglas para futuras modificaciones.

Este archivo es uno de los aspectos más interesantes de la herramienta, ya que permite mantener contexto entre sesiones.


Primer vistazo a la interfaz de OpenCode

Una vez iniciado Opencode en la ruta del proyecto, veras algo como:

Home opencode

La interfaz de OpenCode está diseñada para que prácticamente todo pueda hacerse desde el teclado. Aunque a primera vista parezca muy sencilla, cada una de las zonas tiene una función específica que conviene conocer.

1. Cuadro de entrada de instrucciones (Prompt)

Es la zona principal de interacción con OpenCode.

Aquí puedes escribir cualquier petición que quieras realizar sobre tu proyecto, por ejemplo:

  • ¿Cuál es la arquitectura de este proyecto?
  • Crea un componente de login utilizando React.
  • Explícame cómo funciona el sistema de autenticación.
  • Refactoriza este servicio para seguir los principios SOLID.

OpenCode analizará el repositorio completo antes de responder o modificar el código, por lo que las instrucciones pueden ser mucho más complejas que las de un simple chatbot.


2. Agente seleccionado

En la parte izquierda aparece el agente activo.

En la captura se muestra:

Build

Este agente está orientado a crear y modificar código.

OpenCode dispone de los agentes Build y Plan. Build está pensado para implementar nuevas funcionalidades o refactorizar el código existente y Plan para analizar el proyecto sin modificar archivos.

Puedes cambiar entre ellos en cualquier momento mediante el atajo indicado por la propia interfaz, en la captura, abajo a la derecha. (pulsando el TABULADOR)


3. Modelo de IA utilizado

Junto al agente aparece el modelo de inteligencia artificial seleccionado.

En este caso:

Big Pickle OpenCode Zen

Aquí podrás comprobar en todo momento qué modelo está respondiendo a tus peticiones.

Cambiar de modelo es tan sencillo como pulsar CONTROL + P (Paleta de comandos, ver en el siguiente punto) -> Switch model y aparece un listado con todos los modelos que soporta. Podrás utilizar modelos comerciales como GPT-4.1 o Claude Sonnet, así como modelos gratuitos ejecutados mediante Ollama, OpenRouter o Big Pickle.

PARA MODELOS DE PAGO

Si escoges un modelo de pago deberás disponer de una API Key del proveedor correspondiente. Una vez obtenida, OpenCode te permitirá seleccionarlo desde su configuración, concretamente pulsando CONTROL + P -> Connect Provider -> Eliges el proovedor (Open AI, Github Copilot, Anthropic) -> Especificas API KEY o lo que requiera ese proovedor -> Pulsa Enter.


4. Paleta de comandos (Ctrl + P)

Otro acceso muy útil es:

Ctrl + P → commands

Este atajo abre la paleta de comandos de OpenCode.

Desde ella puedes ejecutar acciones internas como:

  • Cambiar de modelo.
  • Abrir una sesión anterior.
  • Gestionar configuraciones.
  • Lanzar comandos personalizados.
  • Acceder a funcionalidades avanzadas.
Control P

5. Barra de consejos (Tips)

En la parte inferior aparece una pequeña barra con recomendaciones y atajos útiles.

En la captura se muestra el siguiente consejo:

Press Ctrl+X Y to copy the assistant's last message to clipboard

OpenCode va mostrando diferentes sugerencias para descubrir funcionalidades que quizá no utilizarías de otra forma.


Aunque la interfaz de OpenCode es muy minimalista, está diseñada para que todas las funciones importantes estén accesibles mediante el teclado. Una vez te familiarizas con estos elementos y sus atajos, el flujo de trabajo resulta muy ágil y permite interactuar con la IA sin apenas apartar las manos del teclado.

Cómo trabaja OpenCode

El flujo recomendado es muy sencillo.

Explorar

Antes de modificar código conviene pedirle que analice el proyecto.

Analiza la arquitectura del proyecto y explícame cómo funciona el sistema de autenticación.

En pocos segundos recorrerá los archivos necesarios y ofrecerá una explicación bastante precisa.

Planificar

Después podemos pedir:

Diseña un plan para añadir autenticación mediante OAuth sin modificar todavía ningún archivo.

El agente generará un plan paso a paso. Esta fase evita muchos errores.

Implementar

Una vez validado el plan:

Implementa los cambios.

OpenCode editará únicamente los archivos necesarios.

Revisar

Antes de aceptar los cambios conviene revisar:

  • Código generado.
  • Buenas prácticas.
  • Posibles errores.
  • Compatibilidad con el proyecto.

Nunca es recomendable aceptar modificaciones automáticamente sin revisarlas.


Cómo utilizar los comandos disponibles

OpenCode incorpora varios comandos integrados y también permite utilizar los personalizados que hayas creado.

Para ver todos los comandos disponibles, simplemente escribe una barra (/) en el cuadro de texto de la terminal.

Automáticamente aparecerá un listado con todos los comandos:

/init /models /help ...

Podrás desplazarte por la lista con las flechas del teclado y seleccionar el comando que quieras ejecutar pulsando Enter.

Crear un comando personalizado

Los comandos personalizados se almacenan como archivos Markdown dentro del proyecto.

En primer lugar, crea la siguiente estructura de directorios si todavía no existe:

.opencode/
└── commands/

Dentro de la carpeta commands, crea un nuevo archivo. El nombre del archivo será el nombre del comando que utilizarás posteriormente.

Por ejemplo:

.opencode/
└── commands/
    └── deploy.md

A continuación, abre el archivo y añade una descripción junto con las instrucciones que deberá seguir OpenCode cada vez que ejecutes ese comando.

Un ejemplo sencillo sería:

--- 
description: Despliega el proyecto completo 
---

Cuando ejecutes este comando:

1. Ejecuta todos los tests del proyecto.
2. Si encuentra errores sencillos, intenta corregirlos.
3. Ejecuta el linter y comprueba que no existan avisos.
4. Genera la versión de producción.
5. Crea un mensaje de commit descriptivo.

Una vez guardado el archivo, vuelve a OpenCode.

Si escribes / en la terminal, comprobarás que el nuevo comando aparece automáticamente en el listado de comandos disponibles.

Ahora únicamente tendrás que ejecutar:

/deploy

y OpenCode seguirá las instrucciones definidas en el archivo deploy.md.


Skills

Las Skills son uno de los conceptos más potentes de OpenCode. Se trata de pequeños módulos de conocimiento que permiten enseñar al agente cómo debe comportarse en determinadas situaciones o proporcionarle información específica sobre un proyecto.

A diferencia de un comando personalizado, que se ejecuta únicamente cuando el usuario lo invoca, las Skills pueden activarse automáticamente cuando OpenCode detecta que son relevantes para la tarea que estás realizando.

Cómo utilizar las Skills

No es necesario ejecutarlas manualmente. Simplemente realiza una petición relacionada con el contenido de la Skill y OpenCode decidirá automáticamente si debe utilizarla.

Por ejemplo, en el prompt:

Añade un nuevo controlador siguiendo la arquitectura del proyecto.

Si existe una Skill que describe la arquitectura o las convenciones del proyecto, OpenCode la cargará automáticamente para generar una respuesta coherente.

Crear una Skill

Las Skills se almacenan dentro del directorio del proyecto.

Crea la siguiente estructura:

.opencode/
└── skills/

Dentro de la carpeta skills, crea un nuevo archivo Markdown. Por ejemplo:

.opencode/
└── skills/
    └── drupal.md

En su interior puedes definir todas las instrucciones que quieras que OpenCode tenga en cuenta cuando trabaje sobre ese proyecto.

Un ejemplo sería:

# Desarrollo en Drupal

Cuando modifiques este proyecto debes seguir estas normas:

- Utilizar siempre inyección de dependencias.
- No utilizar llamadas estáticas cuando exista un servicio.
- Documentar todos los servicios nuevos.

Las Skills son especialmente útiles para evitar tener que repetir el mismo contexto en cada conversación y conseguir respuestas mucho más adaptadas al proyecto.

Dentro de Opencode puedes ver y seleccionar las Skills desde: CONTROL + P -> Skills

opencode_skills

Plugins

Además de las Skills y los comandos personalizados, OpenCode dispone de un sistema de Plugins que permite ampliar las capacidades de la herramienta e integrarla con servicios externos.

Mientras que las Skills aportan conocimiento y los comandos automatizan tareas, los Plugins añaden nuevas funcionalidades al propio agente.

Algunos ejemplos de uso son:

  • Memoria persistente entre sesiones.
  • Integración con GitHub o GitLab.
  • Automatización de procesos.
  • Gestión de tareas del sistema.

Puedes ver los plugins instalados siguiendo los pasos: CONTROL + P -> Plugins

opencode plugins

Instalar un Plugin

Los plugins se configuran desde el archivo de configuración de OpenCode.

Abre el archivo:

opencode.json

Y añade el plugin que quieras utilizar.

Por ejemplo:

{
  "plugins": [
    "memory",
    "github"
  ]
}

Una vez guardados los cambios, reinicia OpenCode para que cargue la nueva configuración.

A partir de ese momento podrás utilizar las funcionalidades proporcionadas por esos plugins directamente desde tus conversaciones con el agente.

También puedes hacer esto desde la interfaz de Opencode siguiendo los pasos: CONTROL + P -> Install Plugin -> Cambiar scope con tab(global o local) -> escribir nombre del paquete npm -> Enter.

Opencode Install Plugin

Automatización

OpenCode también puede utilizarse sin interfaz interactiva.

Por ejemplo:

opencode "Corrige todos los errores de TypeScript"

O integrarlo dentro de pipelines CI/CD.


Aspectos a tener en cuenta

Como cualquier agente basado en IA, también tiene limitaciones.

  • Siempre conviene revisar el código generado.
  • Puede interpretar mal proyectos muy complejos.
  • Algunos modelos funcionan mejor que otros dependiendo del lenguaje.
  • Cuanto mejor sea el contexto proporcionado, mejores serán las respuestas.
OpencodeAI
Inteligencia artificial
IA