dv - Discourse Vibe - https://github.com/samsaffron/dv es una herramienta que he estado construyendo y que te permite trabajar fácilmente en múltiples contenedores de desarrollo de Discourse preconfigurados.
La construí para facilitar el trabajo con agentes de IA, pero a medida que pasa el tiempo, hace cada vez más cosas.
Entre las cosas que puede hacer:
Clonar una PR en un contenedor
Extraer e importar código en un contenedor
Ejecutar múltiples instancias de Discourse Dev en múltiples puertos
Ejecutar una gran cantidad de agentes de IA dentro de contenedores
y mucho más
Durante el fin de semana, construí un útil ayudante para configurar la IA dentro de un contenedor de desarrollo en ejecución.
Para ejecutar esto en tu propia máquina.
Instala Docker
Ejecuta el script de instalación en el Readme de dv (o compílalo con go build)
Ejecuta dv build (si tienes suficiente memoria) o dv pull si tienes poca memoria. Esto te dará la imagen base.
Ejecuta dv new some-name (dv ls para listar contenedores)
Ejecuta dv config ai y configura tu LLM usando la TUI
dv config ai --help para aprender sobre las posibles claves de API que buscamos
después de agregar el LLM, tendrás un entorno de desarrollo funcional y completamente configurado con Discourse AI
Visita localhost:4200/session/admin/become para iniciar sesión como administrador
Habla con el robot (bot de IA en la barra lateral)
Demostración en video:
También publiqué cómo usar dv + claude code router + discourse MCP en:
¡Gracias por esto! Entiendo lo suficiente como para ver que esto podría ser muy interesante para mí, pero me faltan algunos bloques de conocimiento para comprender realmente qué hace y cómo puedo aprovecharlo.
¿Te importaría dar un poco más de contexto para “no desarrolladores”? (Soy un entusiasta del bricolaje: nunca estoy muy seguro de cómo describir mis habilidades en ese ámbito… no soy fluido en la programación de ninguna manera, pero “entiendo” principios básicos suficientes como para haber logrado escribir algunos plugins básicos de WordPress en su día; conozco algunas cosas de la línea de comandos, entiendo la codificación simple y la administración de servidores… Lo que veo de la IA me hace soñar con que finalmente podré acercarme a ejecutar algunos de mis proyectos).
Ejecutar múltiples instancias de Discourse Dev en varios puertos
Parece genial, Sam. Todavía no lo he instalado. He tenido muchas dificultades para ejecutar múltiples instancias de Discourse usando Docker en un servidor Ubuntu. Uso Caddy como proxy inverso.
Creo que mi objetivo principal sería intentar replicar una instancia de Discourse en vivo en el entorno de desarrollo para trabajar en elementos personalizados antes de ponerlos en producción. Preferiblemente en un nombre de dominio separado.
¿Es necesario instalar esto primero y luego instalar nuevas instancias de Discourse y configurarlas, o se puede instalar para que funcione con instalaciones existentes y luego agregar más? No estoy seguro de si Caddy es la mejor opción para la gestión de DNS con esta configuración o si habría una alternativa mejor.
dv intenta ser una herramienta de extremo a extremo. Gestiona el proxy y todo lo demás; por ejemplo, mantengo mis instancias en XYZ.home.arpa.
Configurarías múltiples contenedores con dv y usarías dv catchup para actualizarlos a la última versión, lo que se encargaría de actualizar los complementos y el núcleo.
En la base, todo son solo contenedores de Docker; puedes moldearlos en cualquier forma que necesites, incluyendo la importación de datos, la ejecución de comandos personalizados, etc.
Esto es muy predominantemente un entorno “primero para desarrolladores/diseñadores”. Podrías ejecutar dv build → dv new something → dv ra codex y navegar por él, pero no intenta llevar la ingeniería a las masas; busca crear muchos pods aislados de desarrollo en tu máquina como una función avanzada para ingenieros y diseñadores.
Gracias, está claro. Si es para personas que quieren poder manejar varios entornos de desarrollo, entonces definitivamente no es para mí (aún me pregunto si debería configurar uno)