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.