OpenCode con Ollama es la configuración que mucha gente busca cuando se harta de enviar cada prompt de código a una API en la nube. Funciona. Pero también es más lento y más frágil de lo que muestran las demos.

Hay que tener claro algo sencillo: OpenCode local es excelente para tareas pequeñas, privadas y repetitivas. No es el modelo al que deberías confiar una migración caótica de varios archivos, a menos que te guste tener que vigilarlo constantemente.

Instalar Ollama

En macOS:

brew install --cask ollama-app
open -a Ollama

En Linux:

curl -fsSL https://ollama.com/install.sh | sh

Luego descarga un modelo:

ollama pull gemma4

Comprueba que está disponible:

ollama list

Usa exactamente el nombre del modelo que aparece en esa lista para tu configuración de OpenCode.

Configurar OpenCode

OpenCode puede trabajar con proveedores compatibles con OpenAI. Ollama expone un endpoint compatible en:

http://localhost:11434/v1

Añade un proveedor de Ollama en tu configuración de OpenCode:

{
  "provider": {
    "ollama": {
      "npm": "@ai-sdk/openai-compatible",
      "options": {
        "baseURL": "http://localhost:11434/v1"
      },
      "models": {
        "gemma4:latest": {}
      }
    }
  }
}

Si OpenCode te pide autenticación, usa una clave de API ficticia:

{
  "ollama": {
    "type": "api",
    "key": "ollama"
  }
}

Reinicia OpenCode y cambia al modelo de Ollama desde el selector de modelos.

Modelos recomendados para empezar

Gemma 4

Buena primera opción. Se le dan bien las explicaciones, los cambios sencillos y las tareas de programación pequeñas. Funciona en equipos modestos en comparación con modelos de código más grandes.

Qwen3.5

Suele ser mejor para código, sobre todo si puedes ejecutar una variante más grande. Los modelos de 27B son más útiles que los modelos más pequeños, pero necesitan bastante memoria.

Llama 3.3

Buen modelo general si dispones de hardware suficiente. Menos práctico en portátiles pequeños.

Expectativas de rendimiento

Los hilos recientes sobre modelos locales lo dicen sin tapujos: los prompts pueden funcionar, el código puede ser bueno y, aun así, todo puede resultar lento en cuanto las llamadas a herramientas empiezan a encadenarse.

Eso es normal. Un agente de código no es una única consulta de chat. Lee archivos, planifica, edita, revisa el resultado y repite. La inferencia local hace que cada bucle se note más.

Para que sea más llevadero:

  • Mantén un contexto reducido
  • Usa modelos más pequeños para ediciones sencillas
  • Mantén el modelo en memoria
  • Cierra las aplicaciones que consumen mucha memoria
  • Usa una alternativa en la nube para refactorizaciones largas

Mantén Ollama en memoria

export OLLAMA_KEEP_ALIVE="-1"

Reinicia Ollama después de configurarlo. Así evitas los arranques en frío repetidos durante una sesión de código.

Cuándo usar una alternativa en la nube

Usa OpenCode local para:

  • Leer código desconocido
  • Preparar cambios pequeños
  • Generar tests
  • Explicar errores
  • Trabajar con archivos privados

Usa un modelo en la nube para:

  • Refactorizaciones de varios archivos
  • Depuraciones complejas
  • Cambios de arquitectura
  • Cualquier cosa que no quieras revisar línea por línea

La mejor configuración no es exclusivamente local, sino local-first.

Configuración relacionada

Si lo que buscas específicamente es Gemma 4, lee Configuración de Gemma 4 con Ollama. Si usas OpenClaw en lugar de OpenCode, consulta Gemma 4 con OpenClaw.

AÑADE UNA ALTERNATIVA EN LA NUBE CON HAIMAKER