El blog de Deska

Usar OpenCode con OpenRouter

Aprende a optimizar tu flujo de trabajo al usar OpenCode con OpenRouter dentro de Deska para cambiar modelos de IA de forma flexible.

· 11 min de lectura

Usar OpenCode con OpenRouter proporciona una combinación poderosa para los desarrolladores que desean mantener el control sobre sus proveedores de IA mientras aprovechan los agentes de código de código abierto. OpenCode funciona como un agente de terminal especializado diseñado para ejecutar tareas, escribir archivos y correr comandos directamente en tu entorno local. Al dirigir sus solicitudes a través de OpenRouter, obtienes acceso a una interfaz unificada para docenas de Modelos de Lenguaje Grandes (LLMs) sin la carga de gestionar múltiples claves de API o servicios de suscripción para cada proveedor individual.

Esta guía explora cómo conectar estas dos tecnologías. Veremos la arquitectura de los agentes basados en terminal, cómo configurar las variables de entorno necesarias para la integración con OpenRouter y cómo un espacio de trabajo de lienzo infinito puede ayudar a gestionar los resultados.

La arquitectura de OpenCode y OpenRouter

OpenCode opera como un agente de interfaz de línea de comandos. A diferencia de las interfaces de chat tradicionales que simplemente ofrecen respuestas de texto, este está diseñado para interactuar con tu sistema de archivos y tu shell. Sigue un ciclo de observación, pensamiento y acción. Cuando recibe una instrucción, determina si necesita leer un archivo, ejecutar una suite de pruebas o modificar una configuración.

OpenRouter actúa como una capa de proxy. En lugar de apuntar OpenCode directamente a un proveedor específico como Anthropic o OpenAI, lo apuntas a la URL base de OpenRouter. Esta capa de abstracción es beneficiosa por varias razones:

  • Alternativas de modelos: Si un modelo específico experimenta alta latencia o caídas, puedes cambiar a un modelo comparable modificando una sola cadena de texto en tu configuración.
  • Eficiencia de costos: Puedes comparar precios entre diferentes proveedores para la misma arquitectura de modelo, asegurándote de usar la opción más económica para tareas rutinarias.
  • Diversidad de modelos: Puedes probar fácilmente cómo rinden los modelos de pesos abiertos como DeepSeek o Llama 3.1 en tareas de código específicas en comparación con modelos propietarios.

Configuración del entorno

Para comenzar a usar OpenCode con OpenRouter, necesitas establecer un puente entre el agente y la API. La mayoría de los agentes basados en terminal buscan variables de entorno específicas para autenticarse y dirigir su tráfico. Necesitarás una cuenta activa de OpenRouter y una clave de API generada desde su panel de control.

Las variables principales suelen incluir la clave de API y la URL base. Debido a que OpenCode está diseñado para ser compatible con los formatos de API estándar, a menudo puedes sobrescribir el endpoint por defecto. En la configuración de tu terminal o en un archivo .env, normalmente establecerías la URL base al endpoint de completions de OpenRouter.

La seguridad es una prioridad al manejar estas claves. Aquí es donde un enfoque local-first se vuelve importante. Al mantener tus variables de entorno en tu máquina local y asegurar que tus herramientas no suban tus claves sensibles a una nube de terceros, mantienes una mejor postura de seguridad.

Integración con Deska

Deska proporciona un entorno ideal para ejecutar estos agentes debido a su diseño de canvas. En lugar de estar confinado a una sola ventana de terminal donde los registros del agente podrían desplazarse y ocultar contexto importante, puedes organizar tu espacio de trabajo de manera estratégica.

Cuando usas OpenCode dentro de Deska, puedes abrir un panel de terminal dedicado para el agente. Lado a lado, puedes colocar un panel de editor de código usando el motor Monaco para observar cómo el agente realiza cambios en tiempo real. Esta visibilidad es crucial para la depuración. Si el agente comete un error, puedes verlo instantáneamente en el panel adyacente en lugar de cambiar de pestañas o ventanas.

También podrías usar Ask Deska para ayudar a gestionar el espacio de trabajo mientras el agente se está ejecutando. Por ejemplo, puedes usar comandos de voz para abrir paneles de navegador adicionales para revisar documentación mientras OpenCode está ocupado refactorizando un módulo.

Comparación de enfoques de interfaz

Los desarrolladores tienen varias opciones para interactuar con agentes de IA. Elegir entre una terminal estándar, una extensión de IDE especializada o un espacio de trabajo de lienzo infinito depende de tus necesidades específicas de flujo de trabajo.

CaracterísticaTerminal EstándarExtensión de IDELienzo de Deska
Contexto VisualBajo (solo texto)Alto (archivos)Máximo (multipanel)
PersistenciaPor sesiónIntegradaAlmacenamiento local-first
FlexibilidadAltaLimitada al IDEAlta (cualquier panel)
Soporte de AgentesSolo agentes CLIPlugins específicosAgentes lado a lado

Mientras que las extensiones de IDE son excelentes para completados rápidos, a menudo ocultan las operaciones de shell subyacentes. Usar OpenCode en un panel dedicado te permite ver la salida cruda, lo cual es útil al diagnosticar por qué falló un comando de compilación específico durante una refactorización automatizada.

Gestión de flujos de trabajo complejos

Al usar OpenCode con OpenRouter para proyectos grandes, el volumen de información puede volverse abrumador. Los panels en Deska te permiten separar conceptos. Podrías tener una terminal para el agente OpenCode, otra para un servidor de desarrollo persistente y un panel de notas para seguir los requisitos que le estás entregando al modelo.

Si necesitas alejarte de tu estación de trabajo, la aplicación mobile te permite monitorear el progreso de tareas del agente que toman mucho tiempo. Como los dispositivos se emparejan directamente sin exponer puertos, puedes verificar si el agente terminó su tarea a través del relay seguro. Esto es particularmente útil para tareas como la generación de suites de pruebas completas o migraciones a gran escala que podrían tomar varios minutos.

FAQ

¿Cómo cambio de modelo al usar OpenCode con OpenRouter?

Para cambiar de modelo, modificas la cadena de texto del modelo en tu configuración de entorno o en los ajustes del agente. Dado que OpenRouter usa un formato unificado, simplemente cambias el identificador, como pasar de anthropic/claude-3-sonnet a google/gemini-pro-1.5, manteniendo la misma clave API y URL base.

¿Puedo ejecutar múltiples agentes lado a lado en Deska?

Sí, Deska te permite ejecutar agentes de código como OpenCode, Claude Code y Codex CLI en paneles separados simultáneamente. Esto es útil para comparar cómo diferentes modelos o arquitecturas de agentes abordan el mismo problema de programación dentro del mismo espacio de trabajo.

¿Se envía mi código a los servidores de Deska al usar OpenCode?

No, el espacio de trabajo es local-first. Tu código, archivos y datos de sesión permanecen en tu máquina. Cuando proporcionas tus propias claves de API para servicios como OpenRouter, la comunicación ocurre directamente entre tu agente local y el proveedor de la API.

Comienza con tu espacio de trabajo

La mejor manera de experimentar este flujo de trabajo es configurar tu propio entorno. Puedes organizar tus herramientas, terminales y editores de la manera que mejor se adapte a tu estilo cognitivo en lugar de estar forzado a un diseño específico.

Para comenzar a construir tu entorno de desarrollo de IA local-first, puedes descargar la aplicación de escritorio gratuita para Mac, Windows o Linux. Una vez instalada, puedes comenzar a colocar tus paneles y configurar OpenCode para trabajar con los proveedores de tu elección.

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