DEVELOPERS & DEVOPS LOCAL ENVIRONMENT
Find a file
Mauro Rosero P. 9badb5d9a9
[DOCS] Actualizado CHANGELOG.md para versión 1.3.1
- Documentados cambios de la versión 1.3.1

- Añadida información sobre nuevas características de Sora

- Registrados cambios en scripts y estructura del proyecto

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-04-07 20:47:35 -05:00
bin [FIXED] Corregida versión hardcoded en sora.sh 2025-04-07 20:37:30 -05:00
data [IMPROVED] Renombrado path_add.sh a devset.sh con internacionalización de mensajes 2025-04-04 09:32:03 -05:00
docs [DOCS] Actualizada documentación de Sora 2025-04-07 20:45:47 -05:00
inventory [MODIFIED] Se agregan credenciales de acceso para clientes smtp y se modifican organizaciones vpn (pritunl) 2025-01-08 11:19:23 -05:00
sops [ADDED] Implementado script sora.sh para integración con aider 2025-04-07 20:32:27 -05:00
.gitignore [ADDED] Archivo LICENSE.md con licencia AGPL-3.0 2025-04-05 20:09:47 -05:00
CHANGELOG.md [DOCS] Actualizado CHANGELOG.md para versión 1.3.1 2025-04-07 20:47:35 -05:00
CLAUDE.md [ADDED] Archivo LICENSE.md con licencia AGPL-3.0 2025-04-05 20:09:47 -05:00
LICENSE.md [ADDED] Archivo LICENSE.md con licencia AGPL-3.0 2025-04-05 20:09:47 -05:00
README.md [DOCS] Actualizada documentación de Sora 2025-04-07 20:45:47 -05:00

MRDevs Tools

License: AGPL-3.0 Version: 1.3.1

Shell: 80% Python: 5% Bash Lib: 13% Config: 2%

📋 Descripción General

MRDevs Tools es un conjunto de herramientas diseñado principalmente para el desarrollo en consola, aunque también se adapta a otros entornos. Está fuertemente orientado a código como servicio, potenciando el uso de herramientas y metodologías ágiles de CI/CD para optimizar el flujo de trabajo de desarrollo. Facilita la creación y gestión de grupos de trabajo y proyectos, permitiendo a los desarrolladores organizar su trabajo de manera eficiente y colaborativa en equipos multifuncionales. Utiliza agentes de inteligencia artificial para asistir en la escritura, corrección y refactorización de código, lo que aumenta la productividad y mejora la calidad del software. Además, pone un fuerte énfasis en la seguridad, incorporando firmas GPG para asegurar la autenticidad e integridad del código y procesos. A través de SOPS, facilita la gestión segura de secretos, permitiendo la encriptación y desencriptación de datos sensibles. También habilita conexiones VPN, garantizando un acceso seguro a infraestructuras remotas de desarrollo.

🤖 Asistentes de IA para el Desarrollo

MRDevs Tools integra potentes asistentes de IA que transforman el proceso de desarrollo:

Cortana y Sora: Desarrollo Potenciado por IA

Nuestros asistentes de IA están diseñados para acelerar y mejorar el ciclo de desarrollo:

  • Cortana - Asistente general basado en Claude:

    • Generación de Código: Crea funciones, clases y módulos completos con instrucciones en lenguaje natural
    • Documentación Automática: Genera documentación técnica, comentarios de código y README
    • Resolución de Problemas: Analiza errores y propone soluciones precisas
    • Refactorización Inteligente: Mejora código existente manteniendo su funcionalidad
    • Control por Voz: Interactúa mediante comandos hablados con reconocimiento local
  • Sora - Asistente colaborativo para programación basado en Aider:

    • Pair Programming: Trabaja directamente con tus repositorios Git
    • Edición Colaborativa: Modifica archivos existentes aplicando cambios automáticamente
    • Integración con Git: Crea commits, ramas y gestiona cambios con instrucciones naturales
    • Modos Flexible: Conecta con servicios en la nube (OpenRouter) o ejecuta modelos localmente (Ollama)
    • Evaluación de Hardware: Analiza y muestra la capacidad del sistema para ejecutar modelos locales
    • Desarrollo Multidocumento: Comprende y modifica sistemas completos de múltiples archivos

Casos de Uso Principales

# Cortana: Generación de código basada en especificaciones
cortana "Crea una API REST en Express.js para gestionar una biblioteca con préstamos"

# Sora: Modificación de código existente en repositorio
bin/sora.sh src/*.js
> Añade validación de datos a todos los formularios y manejo de errores

Para una documentación completa de ambos asistentes, consulta:

🚀 Inicio Rápido

Para comenzar a utilizar MRDevs Tools, consulte la Guía de Uso Completa que incluye instrucciones detalladas de instalación, comandos disponibles y ejemplos de uso.

Requisitos Previos

  • Git instalado en su sistema
  • Permisos de administrador para el Sistema Operativo (para algunas operaciones)
  • Conexión a Internet

Instalación Básica

# Clonar el repositorio
cd $HOME
git clone https://git.rosero.one/mrosero/devs.git

# Instalar herramientas básicas
cd $HOME/devs
bin/bootstrap.sh

# Configurar SOPS para encriptación GPG (obligatorio)
bin/sops_rules.sh

IMPORTANTE: La configuración del archivo de reglas de sops .sops.yaml es un paso obligatorio antes de poder utilizar la plataforma. Para más detalles, consulte la documentación de SOPS Rules.

📚 Documentación

MRDevs Tools cuenta con documentación detallada para todas sus funcionalidades:

  • Guía de Uso: Manual completo de instalación y uso de todas las herramientas
  • SOPS: Guía para la gestión segura de secretos
  • SOPS Rules: Configuración de reglas para encriptación
  • Gum: Tutorial para interfaces TUI interactivas
  • Glow: Guía de uso del renderizador de Markdown
  • Cortana: Manual completo del asistente de desarrollo basado en IA
  • Sora: Guía del asistente basado en IA colaborativo para programación

🔐 Seguridad y Privacidad

MRDevs Tools está diseñado con la seguridad y privacidad en mente:

  • Almacenamiento seguro: Todos los tokens y credenciales se almacenan encriptados usando SOPS con PGP
  • Configuración GPG obligatoria: El script sops_rules.sh configura la clave maestra para encriptación de secretos
  • Directorios ocultos: La configuración sensible se almacena en directorios ocultos (con prefijo .)
  • Sin telemetría: Las herramientas no recopilan ni envían datos de uso
  • Podman como predeterminado: Se usa Podman (sin privilegios) para mayor seguridad en contenedores
  • Ejecución local: Las funcionalidades como reconocimiento de voz funcionan localmente sin enviar datos

🔌 Arquitectura del Sistema

Estructura de Directorios

$HOME/
├── devs/                      # Directorio principal del proyecto
│   ├── bin/                   # Scripts ejecutables y herramientas 
│   │   ├── lib/               # Bibliotecas compartidas
│   │   ├── msg/               # Archivos de mensajes multilingües
│   │   ├── config/            # Configuraciones y parámetros
│   │   │   └── *.gitignore    # Plantillas para proyectos
│   │   ├── bootstrap.sh       # Instalador básico
│   │   ├── update.sh          # Actualizador de entorno
│   │   ├── ollama*.sh         # Scripts de Ollama
│   │   ├── claude_voice.py    # Asistente de voz para Claude Code
│   │   └── ...                # Otros scripts
│   └── data/                  # Datos persistentes (no versionados)
│       └── rates/             # Tarifas almacenadas para programadores
│
├── .sounds/                   # Archivos de audio para notificaciones
├── .ollama/                   # Configuración y datos de Ollama (IA)
│   ├── models/                # Modelos descargados 
│   └── podman-compose.yml     # Configuración del contenedor
│
├── .vosk/                     # Modelos para reconocimiento de voz
│   └── models/                # Modelos de voz por idioma
│
├── .cortana/                  # Configuración de Claude Code
│   └── cortana.sops.yaml      # Token encriptado
│
└── .developer/                # Tokens y configuraciones de desarrollo
    ├── github.sops.yaml       # Token de GitHub encriptado
    └── forgejo.sops.yaml      # Token de Forgejo encriptado
└── .sops.yaml                 # Configuración de SOPS para PGP

Componentes Principales

  • Bibliotecas Base: Conjunto de funciones reutilizables (base.lib, bootstrap.lib, developers.lib, console.lib, etc.)
  • Sistema de Mensajes: Soporte multilingüe para internacionalización con prefijos específicos por herramienta
  • Gestión de Configuración: Archivos de configuración centralizados, plantillas .gitignore por tipo de proyecto, configuración SOPS para cifrado GPG
  • Herramientas de Automatización: Scripts y playbooks de Ansible
  • Gestión de Servicios: Administración de servicios locales como Node-RED, Ollama y más
  • Creación de Proyectos: Sistema estandarizado de plantillas para diversos tipos de proyectos
  • Backup y Seguridad: Herramientas para respaldar configuraciones de desarrollador
  • Integración con IA: Múltiples herramientas para trabajar con proveedores de IA, tokens y modelos locales

💻 Compatibilidad

El proyecto está diseñado para funcionar en múltiples sistemas operativos:

  • Ubuntu/Debian (apt)
  • Red Hat/Fedora (dnf/yum)
  • Arch Linux (pacman)
  • BSD (pkg)
  • macOS (brew)

🤝 Contribución

Para contribuir al proyecto:

  1. Asegúrese de seguir las convenciones de codificación

  2. Use los mensajes de commit con prefijos estándar:

    • [ADDED] - Nueva funcionalidad añadida
    • [IMPROVED] - Mejora en funcionalidad existente
    • [FIXED] - Corrección de errores
    • [SOPS] - Cambios relacionados con encriptación/secretos
    • [DOCS] - Actualización de documentación
    • [INIT] - Inicialización de proyecto o componente
    • [REFACTORED] - Reestructuración de código sin cambios funcionales
    • [MODIFIED] - Cambios menores o ajustes
  3. Para scripts bash, use la plantilla de encabezado que está en bin/config/bash.header:

    #!/bin/bash
    #Script     	: [Bash Script Name] 
    #Apps			: MRDEVS TOOLS
    #Description	: [Bash Script Description]
    #Author			: [Bash Script Author]
    #Company Email	: [Company Email Author's]
    #Personal Email	: [Personal Email Author's]
    #Created		: [Created Date/Time]
    #Modified		: [Modified Date/Time]
    #Version		: [Apps Version]
    #Use Notes		:
    

📄 Licencia

Este proyecto está licenciado bajo la GNU Affero General Public License v3.0 (AGPL-3.0).

La licencia AGPL-3.0 garantiza que:

  • Puedes usar, modificar y distribuir este software libremente
  • Si modificas el software y lo distribuyes o lo ofreces como un servicio de red, debes publicar el código fuente completo
  • Cualquier software derivado debe mantener la misma licencia AGPL-3.0
  • Se preservan los derechos de autor originales

El texto completo de la licencia está disponible en el archivo LICENSE.md del repositorio.

👥 Colaboradores

📞 Soporte

Para dudas o problemas, contacte con:


MRDevs Tools - Simplificando el entorno de desarrollo © 2025 Mauro Rosero P.