El blog de Deska

Conectar Codex CLI a Ollama Local: Paso a Paso para Desarrollo Offline

Aprende a configurar Codex CLI con Ollama local para programar con IA de forma privada y offline usando herramientas local-first y endpoints personalizados.

· 10 min de lectura

El desarrollo de software en entornos con acceso restringido a internet o requisitos estrictos de privacidad exige una transición hacia flujos de trabajo local-first. Una de las formas más efectivas de lograrlo es conectando Codex CLI a instancias locales de Ollama. Esta configuración te permite aprovechar potentes modelos de lenguaje grandes (LLMs) sin enviar tu código propietario a servidores externos. Al redireccionar el CLI hacia endpoints personalizados de API, mantienes el control total sobre tus datos mientras disfrutas de los beneficios de la programación asistida por IA.

Entendiendo la Arquitectura de la IA Local para Programar

El enfoque tradicional de la IA para programar implica que un plugin local o un CLI envíe fragmentos de código a un proveedor en la nube. Aunque es conveniente, esto introduce latencia y posibles riesgos de seguridad para proyectos sensibles. Una arquitectura local reemplaza al proveedor en la nube con un servidor que corre en tu propio hardware.

Ollama actúa como el motor de inferencia, gestionando los pesos de modelos como Llama 3 o Mistral. Proporciona una API compatible con OpenAI de forma predeterminada en el puerto 11434. Codex CLI, diseñado originalmente para interactuar con OpenAI, puede apuntarse hacia esta dirección local. Esta transición es posible porque muchas herramientas de CLI modernas ahora soportan URLs base personalizadas para sus peticiones de API.

Cuando configuras estas herramientas para que trabajen juntas, creas un ciclo de retroalimentación que permanece totalmente en tu máquina. Esto es particularmente útil para desarrolladores que trabajan en instalaciones seguras, en aviones o en regiones con conectividad inestable.

Configuración de Ollama para Conexiones Externas

Antes de modificar la configuración de tu CLI, debes asegurarte de que Ollama esté preparado para recibir peticiones. Por defecto, Ollama escucha en localhost. Si estás ejecutando tu entorno de desarrollo dentro de un contenedor o un espacio de trabajo especializado, es posible que necesites ajustar las variables de entorno.

  1. Instala Ollama en tu máquina anfitriona (Mac, Windows o Linux).
  2. Descarga tu modelo preferido usando ollama pull llama3 o un comando similar.
  3. Verifica que el servidor esté funcionando visitando http://localhost:11434 en tu navegador.

Si planeas usar una herramienta que corre en un entorno virtualizado, es posible que necesites establecer la variable OLLAMA_HOST en 0.0.0.0 para permitir conexiones desde otras interfaces de red locales. Esto garantiza que cualquier panel o terminal que utilices pueda alcanzar el servidor de inferencia.

Redireccionando Codex CLI a Endpoints de API Personalizados

El núcleo de esta configuración reside en el archivo de configuración de Codex CLI. La mayoría de las herramientas de CLI guardan sus ajustes en un directorio oculto dentro de tu carpeta de usuario, como .config/codex. Debes buscar una clave típicamente llamada api_base o base_url.

Para conectar con Ollama, cambia la URL base del endpoint predeterminado de OpenAI a http://localhost:11434/v1. El sufijo /v1 es fundamental porque Ollama utiliza esta ruta para mantener la compatibilidad con la estructura de la API de OpenAI. También necesitarás proporcionar una clave de API ficticia. Dado que Ollama no requiere autenticación para peticiones locales, cualquier cadena como ollama o local-dev será suficiente para satisfacer el requisito del CLI.

Una vez configurado, tus peticiones de línea de comandos serán interceptadas por tu instancia local de Ollama. Esto permite una iteración rápida sin los costos asociados al uso de tokens en plataformas comerciales.

Ejecución de Agentes de IA en un Espacio de Trabajo Local-First

Aunque una terminal estándar funciona para tareas básicas, un espacio de trabajo dedicado puede mejorar significativamente tu productividad al gestionar múltiples LLMs locales. Deska ofrece un entorno donde puedes ejecutar coding agents como Codex CLI y Claude Code uno al lado del otro.

Deska es una aplicación local-first que corre en Mac, Windows y Linux. Te permite crear un canvas infinito donde puedes colocar diferentes herramientas como paneles. Para una configuración offline, podrías tener un panel ejecutando una terminal para Codex CLI, otro mostrando tu editor de código y un tercero con un servidor de documentación local.

Beneficios de Usar Deska para Desarrollo Offline

  • Orquestación de múltiples agentes: Puedes ejecutar diferentes agentes en terminales separadas para comparar sus resultados sobre el mismo problema.
  • Persistencia de sesión: Tus hilos de agentes (agent threads) e historial de comandos permanecen en tu disco local.
  • Interacción directa: Usa la función Ask Deska para gestionar tu espacio de trabajo mediante voz o chat sin necesidad de usar el mouse.

La aplicación está diseñada bajo la idea de que tus datos y almacenamiento (data and storage) deben permanecer bajo tu control. Al usar Deska para alojar tus herramientas local-first, creas una interfaz unificada para tu stack de IA offline.

Comparativa de Orquestadores de LLM Locales

Existen varias formas de ejecutar modelos locales y cada una tiene sus fortalezas. Ollama es popular por su simplicidad y facilidad de uso. Otras herramientas como LocalAI o vLLM ofrecen un control más granular sobre la aceleración de hardware y el procesamiento por lotes.

CaracterísticaOllamaLocalAIvLLM
Facilidad de SetupMuy AltaMediaBaja
Compatibilidad OpenAIIntegradaIntegradaVía Wrapper
Soporte de HardwareGPU y CPUCPU OptimizadoGPU Intensivo
Endpoints PropiosSimpleComplejoAvanzado

Estas herramientas difieren en su enfoque respecto a la gestión de recursos. Ollama es excelente para desarrolladores individuales, mientras que vLLM suele ser preferido para servir modelos a equipos más grandes. Independientemente del backend, el proceso para conectar Codex CLI sigue siendo similar: actualizar la URL base de la API y asegurar que el nombre del modelo coincida con el disponible en tu servidor.

Resolución de Problemas Comunes de Conexión

Al configurar endpoints de API personalizados, podrías encontrar algunos obstáculos. El problema más común es el rechazo de la conexión. Esto suele significar que el servidor de Ollama no está corriendo o está bloqueado por un firewall local.

Otro problema frecuente es la discrepancia en el nombre del modelo. Si intentas ejecutar un comando y recibes un error 404, verifica que el modelo especificado en la configuración de tu CLI coincida con el nombre que usaste durante el comando ollama pull. Algunas herramientas esperan un formato específico, como llama3:latest, mientras que otras solo requieren llama3.

Si estás usando Deska y no puedes ver tu servidor local, verifica tus ajustes (settings) para asegurar que el espacio de trabajo tenga permiso para acceder a tu red local. También puedes usar la guía de resolución de problemas (troubleshooting) para revisar problemas de permisos en la terminal.

FAQ

¿Cómo uso Codex CLI sin conexión a internet?

Debes configurar el CLI para que apunte a un motor de inferencia local como Ollama. Establece la URL base de la API a tu dirección de localhost y asegúrate de haber descargado los modelos necesarios mientras aún tenías conexión.

¿Puedo usar diferentes modelos para distintos paneles en Deska?

Sí, puedes abrir múltiples paneles de terminal y configurar cada uno para usar un modelo local distinto o un agente de IA diferente. Esto te permite trabajar con modelos especializados para diversas tareas simultáneamente.

¿El uso de un LLM local afecta el rendimiento de la computadora?

Ejecutar LLMs localmente consume muchos recursos. Utiliza principalmente la VRAM de la GPU o la RAM del sistema si se usa la CPU. Aunque Deska es una aplicación de escritorio ligera, la ejecución del modelo subyacente utilizará recursos de hardware significativos dependiendo del tamaño del modelo.

Comienza con la IA Local-First

La transición a un flujo de trabajo de desarrollo offline proporciona seguridad, velocidad e independencia de los proveedores en la nube. Al dominar la configuración de endpoints de API personalizados, desbloqueas todo el potencial de tu hardware.

Si buscas un entorno profesional para alojar tus herramientas de IA locales, puedes descargar (download) la aplicación de escritorio de Deska de forma gratuita. Proporciona el lienzo que necesitas para organizar tu código, tus agentes y tus notas en un único espacio de trabajo local-first. Explora nuestros planes (pricing) si eventualmente deseas mezclar modelos locales con inferencia gestionada en la nube para obtener aún más potencia.

💡 Ideas+🐛 BugsPropón una feature o reporta un bug