IA Agent para Generación de Pruebas Unitarias .NET - Sistema multi-agente inteligente
Project description
IA Agent para Generación de Pruebas Unitarias .NET
Un sistema multi-agente de IA avanzado con capacidades de memoria y herramientas externas (ReAct) especializado en la generación automática de pruebas unitarias para APIs REST desarrolladas en .NET.
🚀 Instalación Rápida
# Instalar desde PyPI
pip install ia-agent-dotnet
# Configurar el agente (una sola vez)
ia-agent-config
# ¡Listo para usar! (Descubre proyectos automáticamente)
ia-agent
🚀 Características Principales
- 🤖 Sistema Multi-Agente: Colaboración inteligente entre agentes especializados
- 🔍 Descubrimiento Automático: Detecta proyectos .NET automáticamente en el directorio actual
- 🎯 Selección Interactiva: Interfaz amigable para seleccionar proyectos
- 🧠 Memoria Persistente: Recuerda conversaciones y contexto entre sesiones
- 🛠️ Herramientas Externas: Ejecuta código y busca documentación automáticamente
- 🔄 Patrón ReAct: Razonamiento y actuación iterativa para decisiones autónomas
- 🎯 Especialización: Agentes especializados en análisis, generación, validación y optimización
- 📊 Soporte Multi-Framework: xUnit, NUnit, MSTest
- ⚡ Ejecución Windows: CLI optimizada para terminal de comandos
🏗️ Arquitectura
El sistema utiliza LangChain para capacidades ReAct individuales y AutoGen para colaboración entre agentes especializados:
- Agente Analista: Analiza código .NET y extrae información
- Agente Generador: Genera código de pruebas y templates
- Agente Validador: Valida código y ejecuta pruebas
- Agente Optimizador: Optimiza pruebas y sugiere mejoras
- Agente Coordinador: Coordina tareas y gestiona flujos de trabajo
🔧 Configuración
Configuración Global (Recomendado)
# Configurar el agente una sola vez
ia-agent-config
# Ver configuración actual
ia-agent-config --status
Proveedores de IA Disponibles
- DeepSeek (Recomendado) - Especializado en programación, más económico
- Gemini - Google AI, bueno para análisis general
- OpenAI - Estándar de la industria, más caro
💡 Nota: La configuración se guarda globalmente y se aplica a todos tus proyectos. No necesitas archivos
.enven cada proyecto.
🎯 Uso Básico
Comandos Principales
# Descubrir y analizar proyectos automáticamente (NUEVO)
ia-agent
# Ver ayuda del agente
ia-agent --help
# Analizar un proyecto específico (opcional)
ia-agent --project-path ./mi-proyecto
# Configurar el agente
ia-agent-config
# Ver estado de configuración
ia-agent-config --status
Ejemplos de Uso
# Descubrir proyectos en directorio actual (RECOMENDADO)
ia-agent
# Analizar proyecto específico
ia-agent --project-path ./src/MyProject
# Ver logs detallados
ia-agent --log-level DEBUG
🔍 Descubrimiento Automático de Proyectos
El agente ahora detecta automáticamente todos los proyectos .NET en el directorio actual:
# Navega a tu directorio de proyecto
cd ./mi-proyecto-dotnet
# Ejecuta el agente (descubre automáticamente)
ia-agent
El agente mostrará:
- 📁 Lista de proyectos .NET encontrados
- 🎯 Tipo de proyecto (Web API, Console, Library, Test)
- 🔧 Framework objetivo (.NET 8.0, etc.)
- 📦 Paquetes NuGet utilizados
- 🎯 Opción de selección interactiva
📋 Requisitos del Sistema
- Sistema Operativo: Windows 10/11 (64-bit), Linux, macOS
- Python: 3.11 o superior
- .NET SDK: 8.0 o superior (para proyectos .NET)
- Memoria RAM: 8GB mínimo, 16GB recomendado
- Conexión a Internet: Para APIs de IA
- API Key: DeepSeek, Gemini o OpenAI
📚 Documentación
- 📖 Guía de Usuario
- 🔧 Guía de Desarrollador
- 🚀 Guía de Despliegue
- 🏗️ Arquitectura del Sistema
- 🔍 Referencia de API
- ❓ Solución de Problemas
🛠️ Desarrollo
Instalación para Desarrollo
# Clonar el repositorio
git clone https://github.com/Lopand-Solutions/ia-agent-to-unit-test-api-rest.git
cd ia-agent-to-unit-test-api-rest
# Crear entorno virtual
python -m venv venv
venv\Scripts\activate # Windows
# source venv/bin/activate # Linux/Mac
# Instalar en modo desarrollo
pip install -e .
Contribuir
- Fork el repositorio
- Crear rama de feature (
git checkout -b feature/nueva-funcionalidad) - Commit cambios (
git commit -am 'Agregar nueva funcionalidad') - Push a la rama (
git push origin feature/nueva-funcionalidad) - Crear Pull Request
📊 Estado del Proyecto
✅ Fases Completadas
Fase 1: Análisis y Diseño ✅
- Estructura del proyecto creada
- Dependencias configuradas
- Repositorio Git inicializado
- Archivos de configuración creados
- Requisitos documentados
- Arquitectura diseñada
Fase 2: Desarrollo del Sistema Multi-Agente ✅
- Agentes especializados implementados
- Sistema de memoria vectorial
- Herramientas .NET integradas
- CLI básico funcional
- Sistema de logging implementado
Fase 3: Funcionalidades Avanzadas ✅
- Suite de testing completa
- Mejoras de IA implementadas
- Sistema de monitoreo
- Documentación de API
- Optimizaciones de rendimiento
Fase 4: Optimización y Despliegue ✅
- Sistema de configuración robusto
- Manager de memoria optimizado
- Optimizador de rendimiento
- Manejador de errores avanzado
- Configuración Docker completa
- Scripts de despliegue automatizado
- Validador de producción
Fase 5: Documentación Final y Entrega ✅
- Guía de usuario completa
- Guía de desarrollador
- Guía de despliegue
- Documentación de API
- Guía de solución de problemas
- Changelog del proyecto
- Licencia MIT
🎯 Versión Actual: v0.7.0
- Estado: ✅ DISPONIBLE EN PyPI
- Funcionalidades: Sistema multi-agente con descubrimiento automático de proyectos
- Nuevo: 🔍 Descubrimiento automático y selección interactiva de proyectos .NET
- Configuración: Global y automática (sin archivos .env)
- Proveedores: DeepSeek, Gemini, OpenAI
- Documentación: Guías completas y API reference
🤝 Soporte
- GitHub Issues: Reportar bugs y solicitar features
- Documentación: Guías completas en el directorio
docs/ - PyPI: ia-agent-dotnet
📄 Licencia
Este proyecto está bajo la Licencia MIT. Ver el archivo LICENSE para más detalles.
🙏 Agradecimientos
- LangChain - Framework para agentes con capacidades ReAct
- AutoGen - Framework para colaboración multi-agente
- DeepSeek - IA especializada en programación
- Google Gemini - Google AI para análisis general
- OpenAI - APIs de IA para generación de código
- Comunidad .NET por las mejores prácticas de testing
Desarrollado con ❤️ para la comunidad .NET
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ia_agent_dotnet-0.7.0.tar.gz.
File metadata
- Download URL: ia_agent_dotnet-0.7.0.tar.gz
- Upload date:
- Size: 131.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bdeb95555aecb556a2a05926da94cb83a423d553d1247eb04e2f8fc1060e9721
|
|
| MD5 |
f4766d6c288b38cb8e76fcf1c7a29c0d
|
|
| BLAKE2b-256 |
89c3292bd242d10299b32b19c805ce657b9adbc245442790de2c985474c3fe08
|
File details
Details for the file ia_agent_dotnet-0.7.0-py3-none-any.whl.
File metadata
- Download URL: ia_agent_dotnet-0.7.0-py3-none-any.whl
- Upload date:
- Size: 126.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
588160cff66d64753907613c9d2203906e0ab908cd87718046a56afe7944e855
|
|
| MD5 |
2a5794eaaf82f728112a75012987e170
|
|
| BLAKE2b-256 |
08d12dfc8730c482b3d97f633a4d0b6a5df5ad50aabd779c109a959e8561319a
|